		
		    Dungeoneer by Michael Jensen
		     for Allegro Speedhack 2005


	This Version of the readme.txt is supplied with the original binary 
release of Dungeoneer.  To my knowledge this version has not been modified from
the original speedhack version. 

-------------------------------------------------------------------------------

Table of Contents:

	Compiling and Running

	Compliance

	Gameplay

	Controls

	Video Size

	Sound

	Config.ini

	Contact me

-------------------------------------------------------------------------------

Compiling and Running:

	A dev-cpp project has been included.  Compile against allegro 4.2.0,
	Beta 4 and Orz's PMASK, a modified version (modified to suppress
	compiler warnings) has been included.

	My allegro folder was in C:\dev-cpp\allegro, it might be hard coded
	as a library in dev-cpp since I had to browse to it. It will produce
	a file called ASH2005.EXE.

	Untested:
	With Mingw32 you should be able to type something along the lines of:

	gpp main.cpp gfx.cpp menu.cpp object.cpp actor.cpp ctrl.cpp pmask.c
		-mwindows -O2 -Wall -oDungeoneer.exe

	You need gfx/master.pcx to run the game, you SHOULD have ./config.ini.

-------------------------------------------------------------------------------

Compliance:

	Survival:

		The game is about seeing how long you can survive in a living
		dungeon filled with monsters!



	Make it a Classic:	

		320x200x16, and 4 Button Gamepad.

		(See Controls, and Video Size.)


	Randomness:

		The dungeon layout is randomized with each new game, and parts
		of it are re-randomized if you go back to parts you've allready
		been to (the floor/wall layout, however becomes static.)

	Dichotomy:

		Not really sure if I followed this or not, it seems like
		almost every game out there would follow this rule.  Good vs.
		Evil.  One Person vs. Legions of the Underworld.  An RPG
		that plays like an action game?

	World Map:

		The town can be used to access most of the game.  If you have
		been that deep during the current game you can use stairways
		that go to these Levels: 1, 4, 7, 10, 13, 16, and 19.

		The entrance to Level 1 is always there, the entrance to
		level 19 appears in the southern null of the town, opposite
		The Inn.

	Act of IP:

		Didn't feel like it.

	250KB:

		The sources, and master.pcx, uncompressed add up to ~140KB.


	72 Hours:

		I estimate that 95% of the code for this project was written
		during the 72hr period.  The only thing that wasn't was
		a template that put the program into a graphics mode with
		logic/draw cycles.

		I did miss out on much of the weekend however.  I estimate
		that I only spent 30-40 hours on this project.  Also all
		of the graphics were made by me, during the competition.

		Feel free to use any of my horrible source files, or awesome
		graphics in any freeware project you like.  Just give me
		credit where due, and notify me (See Contact me).

		Also a modified version of Orz's PMASK is included and
		required to build the program (PMASK.C, PMASK.H, PMASK.TXT).

-------------------------------------------------------------------------------

Gameplay:

		The deeper you go into the dungeons, the stronger the monsters
	are and the bigger the labyrnth is.  The more monsters you kill the
	stronger you get.  Saving the game is implimented, loading is not
	(there was a last minute bug so I disabled it.)

		The dungeon is alive.  If you leave one part and come back
	some things might be different...

		Starting on level three there are fire pillars you'll have
	to deal with, they're quite painful!  Every three levels or so you'll
	get an upstairway in a dungeon that can take you back up to town for
	healing.  Don't worry a new stairway is there in town and you can go
	right back down where you left off.  The empty bottom area of town
	was originally going to be a graveyard for highscores, but now is the
	entrance to level 19... Note that entrances only appear for level 1,
	and for levels you've visited in that life-time (1, 4, 7, 10, 13, 16,
	and 19).

		If you use the same name twice it will overwrite the previously
	saved game.  Not that it's important since you can't load.  The save
	files are kind of big, so you might as well use the same name over
	and over to save disk space.  (A couple of versions ago they're were
	1MB each, now they're down to ~600kb each, that's using Allegro's
	built-in compression! Not very effecient at all!)

	(See Controls.)

-------------------------------------------------------------------------------

Controls:

		Controls are editable from the Config.ini file. Keys parsed for
	are listed as return values from a function called what_char in
	source/ctrl.cpp.  There is a huge number of them so try typing the key
	out and seeing if it works before bothering with the sources.

	Config.ini as shipped:

		Keyboard:	
	
		KEY_A = Z			(Menus/Game Action)
		KEY_B = X			(Menus/Game Action)
		KEY_SELECT = ESCAPE		(Display FPS)
		KEY_START = ENTER		(Used in Menus)

		Static Keys:
		Up, Down, Left, Right (Static)	(Menus/Movement)
	
		F12		= Power Button (Graceful shutdown)

		Print Screen	= Take Snapshot.
	

		Joystick:

			Joystick is supported but has been disabled by default.
		It supports the same kind of configuration, up/down/left/right
		are static on stick one, and JOY_A, JOY_B, JOY_START, and
		JOY_SELECT can be configured.  The actual device used can also
		be configured if you have more than one, but remember the first
		stick on that device is your directional controller.
		(USE_JOYSTICK = the joystick to be used, or 0 = off.)


	Game Action:

		Button A = Run, but some things like stairways/houses aren't
				usable unless you let go of the run button.

		Button B = Attack

-------------------------------------------------------------------------------

Video Size:

		Graphics are drawn on a bitmap that is 320x200 in size with a
	palette of 15 unique colors (haven't needed #16 yet...)


	In the Config.ini the values DISPLAY_WIDTH, and DISPLAY_HEIGHT are the
	size of a secondary backbuffer, the graphics from the 320x200 backbuffer
	are stretched on to this secondary backbuffer, which is inturn centered
	on your screen.

	The screen resolution can be configured via GFX_WIDTH, GFX_HEIGHT, and
	VSYNC.

-------------------------------------------------------------------------------

Sound:

	Sound has not been implimented.  Ignore SFX_VOLUME, and MIDI_VOLUME.

-------------------------------------------------------------------------------

Config.ini:

	Everything in the config.ini belongs under the category [MAIN].

-------------------------------------------------------------------------------
	
Contact me:

	Feedback welcome:  MTJ419@YAHOO.COM, if I don't respond it's probably
	because my spam bot ate it, feel free to resend if it's been a week.

-------------------------------------------------------------------------------

Thank's for playing.

-------------------------------------------------------------------------------
